css: Move scale to GtkStyleProviderPrivate
authorBenjamin Otte <otte@redhat.com>
Sat, 31 Jan 2015 10:56:15 +0000 (11:56 +0100)
committerBenjamin Otte <otte@redhat.com>
Fri, 6 Feb 2015 10:26:31 +0000 (11:26 +0100)
This way, we can remove it as a separate argument from
gtk_css_value_compute() and allow computation to only depend on one
thing: the style provider.

44 files changed:
gtk/gtkcssanimatedstyle.c
gtk/gtkcssanimatedstyleprivate.h
gtk/gtkcssarrayvalue.c
gtk/gtkcssbgsizevalue.c
gtk/gtkcssbordervalue.c
gtk/gtkcsscolorvalue.c
gtk/gtkcsscornervalue.c
gtk/gtkcsseasevalue.c
gtk/gtkcssenginevalue.c
gtk/gtkcssenumvalue.c
gtk/gtkcssiconthemevalue.c
gtk/gtkcssimage.c
gtk/gtkcssimagebuiltin.c
gtk/gtkcssimagegradient.c
gtk/gtkcssimageicontheme.c
gtk/gtkcssimagelinear.c
gtk/gtkcssimageprivate.h
gtk/gtkcssimagescaled.c
gtk/gtkcssimageurl.c
gtk/gtkcssimagevalue.c
gtk/gtkcssinheritvalue.c
gtk/gtkcssinitialvalue.c
gtk/gtkcsskeyframes.c
gtk/gtkcsskeyframesprivate.h
gtk/gtkcsslookup.c
gtk/gtkcsslookupprivate.h
gtk/gtkcssnumbervalue.c
gtk/gtkcsspositionvalue.c
gtk/gtkcssrepeatvalue.c
gtk/gtkcssrgbavalue.c
gtk/gtkcssshadowsvalue.c
gtk/gtkcssshadowvalue.c
gtk/gtkcssstaticstyle.c
gtk/gtkcssstaticstyleprivate.h
gtk/gtkcssstringvalue.c
gtk/gtkcsstransformvalue.c
gtk/gtkcsstypedvalue.c
gtk/gtkcssunsetvalue.c
gtk/gtkcssvalue.c
gtk/gtkcssvalueprivate.h
gtk/gtkstylecascade.c
gtk/gtkstylecontext.c
gtk/gtkstyleproviderprivate.c
gtk/gtkstyleproviderprivate.h

index 98aa930865e9497a383acc35ed76c292d18fc235..4583d8cc71745251fee78694f5cf99a4a1f7634b 100644 (file)
@@ -313,7 +313,6 @@ gtk_css_animated_style_create_css_animations (GSList                  *animation
                                               GtkCssStyle             *parent_style,
                                               gint64                   timestamp,
                                               GtkStyleProviderPrivate *provider,
-                                              int                      scale,
                                               GtkCssStyle             *source)
 {
   GtkCssValue *durations, *delays, *timing_functions, *animation_names;
@@ -358,7 +357,7 @@ gtk_css_animated_style_create_css_animations (GSList                  *animation
           if (keyframes == NULL)
             continue;
 
-          keyframes = _gtk_css_keyframes_compute (keyframes, provider, scale, base_style, parent_style);
+          keyframes = _gtk_css_keyframes_compute (keyframes, provider, base_style, parent_style);
 
           animation = _gtk_css_animation_new (name,
                                               keyframes,
@@ -401,7 +400,6 @@ gtk_css_animated_style_new (GtkCssStyle             *base_style,
                             GtkCssStyle             *parent_style,
                             gint64                   timestamp,
                             GtkStyleProviderPrivate *provider,
-                            int                      scale,
                             GtkCssStyle             *previous_style)
 {
   GtkCssAnimatedStyle *result;
@@ -416,7 +414,7 @@ gtk_css_animated_style_new (GtkCssStyle             *base_style,
 
   if (previous_style != NULL)
     animations = gtk_css_animated_style_create_css_transitions (animations, base_style, timestamp, previous_style);
-  animations = gtk_css_animated_style_create_css_animations (animations, base_style, parent_style, timestamp, provider, scale, previous_style);
+  animations = gtk_css_animated_style_create_css_animations (animations, base_style, parent_style, timestamp, provider, previous_style);
 
   if (animations == NULL)
     return g_object_ref (base_style);
index c125ebb4b8048add9fe1d52fc44b9adc71138333..4a6d2b975a727176dae7e073d598d71fb427a223 100644 (file)
@@ -56,7 +56,6 @@ GtkCssStyle *           gtk_css_animated_style_new              (GtkCssStyle
                                                                  GtkCssStyle            *parent_style,
                                                                  gint64                  timestamp,
                                                                  GtkStyleProviderPrivate *provider,
-                                                                 int                     scale,
                                                                  GtkCssStyle            *previous_style);
 GtkCssStyle *           gtk_css_animated_style_new_advance      (GtkCssAnimatedStyle    *source,
                                                                  GtkCssStyle            *base,
index 73452adabd00eed64044002164e11f815bcfe60d..94226b6ea29ff2da8dce8d61384c42747391de27 100644 (file)
@@ -46,9 +46,8 @@ static GtkCssValue *
 gtk_css_value_array_compute (GtkCssValue             *value,
                              guint                    property_id,
                              GtkStyleProviderPrivate *provider,
-                            int                      scale,
-                             GtkCssStyle    *values,
-                             GtkCssStyle    *parent_values,
+                             GtkCssStyle             *style,
+                             GtkCssStyle             *parent_style,
                              GtkCssDependencies      *dependencies)
 {
   GtkCssValue *result;
@@ -59,7 +58,7 @@ gtk_css_value_array_compute (GtkCssValue             *value,
   result = NULL;
   for (i = 0; i < value->n_values; i++)
     {
-      i_value =  _gtk_css_value_compute (value->values[i], property_id, provider, scale, values, parent_values, &child_deps);
+      i_value =  _gtk_css_value_compute (value->values[i], property_id, provider, style, parent_style, &child_deps);
 
       *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
 
index ef8c525e33bbcaafa38629b41e0fbefaea837df0..7fb2de4f657cfc856f40689ddf41db2c62aa0706 100644 (file)
@@ -44,9 +44,8 @@ static GtkCssValue *
 gtk_css_value_bg_size_compute (GtkCssValue             *value,
                                guint                    property_id,
                                GtkStyleProviderPrivate *provider,
-                              int                      scale,
-                               GtkCssStyle    *values,
-                               GtkCssStyle    *parent_values,
+                               GtkCssStyle             *style,
+                               GtkCssStyle             *parent_style,
                                GtkCssDependencies      *dependencies)
 {
   GtkCssValue *x, *y;
@@ -59,10 +58,10 @@ gtk_css_value_bg_size_compute (GtkCssValue             *value,
   x = y = NULL;
 
   if (value->x)
-    x = _gtk_css_value_compute (value->x, property_id, provider, scale, values, parent_values, &x_deps);
+    x = _gtk_css_value_compute (value->x, property_id, provider, style, parent_style, &x_deps);
 
   if (value->y)
-    y = _gtk_css_value_compute (value->y, property_id, provider, scale, values, parent_values, &y_deps);
+    y = _gtk_css_value_compute (value->y, property_id, provider, style, parent_style, &y_deps);
 
   *dependencies = _gtk_css_dependencies_union (x_deps, y_deps);
 
index edf0c67145aca9c5dc2b22ead443fbb326ba526c..146616d28fd5ad8abb8aea69d10f42e07cdbf5d2 100644 (file)
@@ -45,10 +45,9 @@ static GtkCssValue *
 gtk_css_value_border_compute (GtkCssValue             *value,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
-                              GtkCssDependencies       *dependencies)
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
+                              GtkCssDependencies      *dependencies)
 {
   GtkCssValue *computed;
   GtkCssDependencies child_deps;
@@ -62,7 +61,7 @@ gtk_css_value_border_compute (GtkCssValue             *value,
     {
       if (value->values[i])
         {
-          computed->values[i] = _gtk_css_value_compute (value->values[i], property_id, provider, scale, values, parent_values, &child_deps);
+          computed->values[i] = _gtk_css_value_compute (value->values[i], property_id, provider, style, parent_style, &child_deps);
           *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
           changed |= (computed->values[i] != value->values[i]);
         }
index b9b247d2d6bf68eb1fc1c80eb37d8a8423bf19de..dcc641033a360517975af02cc2f36859466da310 100644 (file)
@@ -100,9 +100,8 @@ gtk_css_value_color_free (GtkCssValue *color)
 static GtkCssValue *
 gtk_css_value_color_get_fallback (guint                    property_id,
                                   GtkStyleProviderPrivate *provider,
-                                 int                      scale,
-                                  GtkCssStyle    *values,
-                                  GtkCssStyle    *parent_values)
+                                  GtkCssStyle             *style,
+                                  GtkCssStyle             *parent_style)
 {
   static const GdkRGBA transparent = { 0, 0, 0, 0 };
 
@@ -124,9 +123,8 @@ gtk_css_value_color_get_fallback (guint                    property_id,
         return _gtk_css_value_compute (_gtk_css_style_property_get_initial_value (_gtk_css_style_property_lookup_by_id (property_id)),
                                        property_id,
                                        provider,
-                                      scale,
-                                       values,
-                                       parent_values,
+                                       style,
+                                       parent_style,
                                        NULL);
       default:
         if (property_id < GTK_CSS_PROPERTY_N_PROPERTIES)
@@ -302,9 +300,8 @@ static GtkCssValue *
 gtk_css_value_color_compute (GtkCssValue             *value,
                              guint                    property_id,
                              GtkStyleProviderPrivate *provider,
-                            int                      scale,
-                             GtkCssStyle    *values,
-                             GtkCssStyle    *parent_values,
+                             GtkCssStyle             *style,
+                             GtkCssStyle             *parent_style,
                              GtkCssDependencies      *dependencies)
 {
   GtkCssValue *resolved, *current;
@@ -316,9 +313,9 @@ gtk_css_value_color_compute (GtkCssValue             *value,
    */
   if (property_id == GTK_CSS_PROPERTY_COLOR)
     {
-      if (parent_values)
+      if (parent_style)
         {
-          current = gtk_css_style_get_value (parent_values, GTK_CSS_PROPERTY_COLOR);
+          current = gtk_css_style_get_value (parent_style, GTK_CSS_PROPERTY_COLOR);
           current_deps = GTK_CSS_EQUALS_PARENT;
         }
       else
@@ -329,7 +326,7 @@ gtk_css_value_color_compute (GtkCssValue             *value,
     }
   else
     {
-      current = gtk_css_style_get_value (values, GTK_CSS_PROPERTY_COLOR);
+      current = gtk_css_style_get_value (style, GTK_CSS_PROPERTY_COLOR);
       current_deps = GTK_CSS_DEPENDS_ON_COLOR;
     }
   
@@ -341,7 +338,7 @@ gtk_css_value_color_compute (GtkCssValue             *value,
                                            NULL);
 
   if (resolved == NULL)
-    return gtk_css_value_color_get_fallback (property_id, provider, scale, values, parent_values);
+    return gtk_css_value_color_get_fallback (property_id, provider, style, parent_style);
 
   return resolved;
 }
index d97737207a53712a6b090f8a884fcca88d0b9fd0..1eaee720563d14632f3a70cb5c2a5145282d70e7 100644 (file)
@@ -40,16 +40,15 @@ static GtkCssValue *
 gtk_css_value_corner_compute (GtkCssValue             *corner,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   GtkCssValue *x, *y;
   GtkCssDependencies x_deps, y_deps;
 
-  x = _gtk_css_value_compute (corner->x, property_id, provider, scale, values, parent_values, &x_deps);
-  y = _gtk_css_value_compute (corner->y, property_id, provider, scale, values, parent_values, &y_deps);
+  x = _gtk_css_value_compute (corner->x, property_id, provider, style, parent_style, &x_deps);
+  y = _gtk_css_value_compute (corner->y, property_id, provider, style, parent_style, &y_deps);
   *dependencies = _gtk_css_dependencies_union (x_deps, y_deps);
   if (x == corner->x && y == corner->y)
     {
index e1ec50d3080adec7a04a3da4f3097eded54b5c31..2e5ff3b86d40e97c6db1e5604436111a51740784 100644 (file)
@@ -53,9 +53,8 @@ static GtkCssValue *
 gtk_css_value_ease_compute (GtkCssValue             *value,
                             guint                    property_id,
                             GtkStyleProviderPrivate *provider,
-                           int                      scale,
-                            GtkCssStyle    *values,
-                            GtkCssStyle    *parent_values,
+                            GtkCssStyle             *style,
+                            GtkCssStyle             *parent_style,
                             GtkCssDependencies      *dependencies)
 {
   return _gtk_css_value_ref (value);
index 554a89494405628305a5af94f3bdc0222c8348a7..ce2a5e476698280cbfbdf95676335a850821dcdf 100644 (file)
@@ -39,9 +39,8 @@ static GtkCssValue *
 gtk_css_value_engine_compute (GtkCssValue             *value,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   return _gtk_css_value_ref (value);
index 15140520ef3724a0f6a52b8c55a34c149e0eb5aa..49833df092570b4acea37c3bd0ef11b43a203aca 100644 (file)
@@ -41,9 +41,8 @@ static GtkCssValue *
 gtk_css_value_enum_compute (GtkCssValue             *value,
                             guint                    property_id,
                             GtkStyleProviderPrivate *provider,
-                           int                      scale,
-                            GtkCssStyle    *values,
-                            GtkCssStyle    *parent_values,
+                            GtkCssStyle             *style,
+                            GtkCssStyle             *parent_style,
                             GtkCssDependencies      *dependencies)
 {
   return _gtk_css_value_ref (value);
@@ -165,9 +164,8 @@ static GtkCssValue *
 gtk_css_value_font_size_compute (GtkCssValue             *value,
                                  guint                    property_id,
                                  GtkStyleProviderPrivate *provider,
-                                int                      scale,
-                                 GtkCssStyle    *values,
-                                 GtkCssStyle    *parent_values,
+                                 GtkCssStyle             *style,
+                                 GtkCssStyle             *parent_style,
                                  GtkCssDependencies      *dependencies)
 {
   double font_size;
@@ -200,8 +198,8 @@ gtk_css_value_font_size_compute (GtkCssValue             *value,
       break;
     case GTK_CSS_FONT_SIZE_SMALLER:
       *dependencies = GTK_CSS_DEPENDS_ON_PARENT;
-      if (parent_values)
-        font_size = _gtk_css_number_value_get (gtk_css_style_get_value (parent_values, GTK_CSS_PROPERTY_FONT_SIZE), 100);
+      if (parent_style)
+        font_size = _gtk_css_number_value_get (gtk_css_style_get_value (parent_style, GTK_CSS_PROPERTY_FONT_SIZE), 100);
       else
         font_size = _gtk_css_font_size_get_default (provider);
       /* XXX: This is what WebKit does... */
@@ -209,8 +207,8 @@ gtk_css_value_font_size_compute (GtkCssValue             *value,
       break;
     case GTK_CSS_FONT_SIZE_LARGER:
       *dependencies = GTK_CSS_DEPENDS_ON_PARENT;
-      if (parent_values)
-        font_size = _gtk_css_number_value_get (gtk_css_style_get_value (parent_values, GTK_CSS_PROPERTY_FONT_SIZE), 100);
+      if (parent_style)
+        font_size = _gtk_css_number_value_get (gtk_css_style_get_value (parent_style, GTK_CSS_PROPERTY_FONT_SIZE), 100);
       else
         font_size = _gtk_css_font_size_get_default (provider);
       /* XXX: This is what WebKit does... */
index 8422f2cbc65763dcb01cd2800d4ba87898f441ad..305e71384bb06067015ebe5ab2c44b52a0133438 100644 (file)
@@ -73,7 +73,6 @@ static GtkCssValue *
 gtk_css_value_icon_theme_compute (GtkCssValue             *icon_theme,
                                   guint                    property_id,
                                   GtkStyleProviderPrivate *provider,
-                                 int                      scale,
                                   GtkCssStyle             *style,
                                   GtkCssStyle             *parent_style,
                                   GtkCssDependencies      *dependencies)
index bdcbcf3c8047313a08c0b3e64d98b166858a70df..2b7cfa3c0780e86e2ec74d128fc28930ea566ee3 100644 (file)
@@ -64,9 +64,8 @@ static GtkCssImage *
 gtk_css_image_real_compute (GtkCssImage             *image,
                             guint                    property_id,
                             GtkStyleProviderPrivate *provider,
-                           int                      scale,
-                            GtkCssStyle    *values,
-                            GtkCssStyle    *parent_values,
+                            GtkCssStyle             *style,
+                            GtkCssStyle             *parent_style,
                             GtkCssDependencies      *dependencies)
 {
   return g_object_ref (image);
@@ -149,17 +148,16 @@ GtkCssImage *
 _gtk_css_image_compute (GtkCssImage             *image,
                         guint                    property_id,
                         GtkStyleProviderPrivate *provider,
-                       int                      scale,
-                        GtkCssStyle    *values,
-                        GtkCssStyle    *parent_values,
+                        GtkCssStyle             *style,
+                        GtkCssStyle             *parent_style,
                         GtkCssDependencies      *dependencies)
 {
   GtkCssDependencies unused;
   GtkCssImageClass *klass;
 
   g_return_val_if_fail (GTK_IS_CSS_IMAGE (image), NULL);
-  g_return_val_if_fail (GTK_IS_CSS_STYLE (values), NULL);
-  g_return_val_if_fail (parent_values == NULL || GTK_IS_CSS_STYLE (parent_values), NULL);
+  g_return_val_if_fail (GTK_IS_CSS_STYLE (style), NULL);
+  g_return_val_if_fail (parent_style == NULL || GTK_IS_CSS_STYLE (parent_style), NULL);
 
   if (dependencies == NULL)
     dependencies = &unused;
@@ -167,7 +165,7 @@ _gtk_css_image_compute (GtkCssImage             *image,
 
   klass = GTK_CSS_IMAGE_GET_CLASS (image);
 
-  return klass->compute (image, property_id, provider, scale, values, parent_values, dependencies);
+  return klass->compute (image, property_id, provider, style, parent_style, dependencies);
 }
 
 GtkCssImage *
index 3ee9bd5c96f0a5f2e244cd1b2371debdd7ed7a74..17508c7969b5b8b46e4677ed45a6582a12e73a74 100644 (file)
@@ -805,7 +805,6 @@ static GtkCssImage *
 gtk_css_image_builtin_compute (GtkCssImage             *image,
                                guint                    property_id,
                                GtkStyleProviderPrivate *provider,
-                               int                      scale,
                                GtkCssStyle             *style,
                                GtkCssStyle             *parent_style,
                                GtkCssDependencies      *dependencies)
index 8be1957dd6776fab841d22777a47235f2331496a..3758def4e3b25945aa7d1f8d2614cb4256bcba5a 100644 (file)
@@ -34,9 +34,8 @@ static GtkCssImage *
 gtk_css_image_gradient_compute (GtkCssImage             *image,
                                 guint                    property_id,
                                 GtkStyleProviderPrivate *provider,
-                               int                      scale,
-                                GtkCssStyle    *values,
-                                GtkCssStyle    *parent_values,
+                                GtkCssStyle             *style,
+                                GtkCssStyle             *parent_style,
                                 GtkCssDependencies      *dependencies)
 {
   GtkCssImageGradient *gradient = GTK_CSS_IMAGE_GRADIENT (image);
@@ -47,7 +46,7 @@ gtk_css_image_gradient_compute (GtkCssImage             *image,
 
   copy = g_object_new (GTK_TYPE_CSS_IMAGE_GRADIENT, NULL);
   copy->gradient = gtk_gradient_ref (gradient->gradient);
-  copy->pattern = _gtk_gradient_resolve_full (copy->gradient, provider, values, parent_values, dependencies);
+  copy->pattern = _gtk_gradient_resolve_full (copy->gradient, provider, style, parent_style, dependencies);
 
   return GTK_CSS_IMAGE (copy);
 }
index 799724bcc6421664c129a6448980703a27e0289a..458928c361ec81e026f6cee6a57a7a7889c88108 100644 (file)
@@ -128,9 +128,8 @@ static GtkCssImage *
 gtk_css_image_icon_theme_compute (GtkCssImage             *image,
                                   guint                    property_id,
                                   GtkStyleProviderPrivate *provider,
-                                  int                      scale,
-                                  GtkCssStyle    *values,
-                                  GtkCssStyle    *parent_values,
+                                  GtkCssStyle             *style,
+                                  GtkCssStyle             *parent_style,
                                   GtkCssDependencies      *dependencies)
 {
   GtkCssImageIconTheme *icon_theme = GTK_CSS_IMAGE_ICON_THEME (image);
@@ -147,8 +146,8 @@ gtk_css_image_icon_theme_compute (GtkCssImage             *image,
   copy = g_object_new (GTK_TYPE_CSS_IMAGE_ICON_THEME, NULL);
   copy->name = g_strdup (icon_theme->name);
   copy->icon_theme = gtk_icon_theme_get_for_screen (screen);
-  copy->scale = scale;
-  copy->color = *_gtk_css_rgba_value_get_rgba (gtk_css_style_get_value (values, GTK_CSS_PROPERTY_COLOR));
+  copy->scale = _gtk_style_provider_private_get_scale (provider);
+  copy->color = *_gtk_css_rgba_value_get_rgba (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_COLOR));
 
   *dependencies = GTK_CSS_DEPENDS_ON_COLOR;
 
index f8ee0b2bc2d9e101116fe7df816be7703068fde1..ac6310c6a5054e3709eca0651642f257732c5b89 100644 (file)
@@ -431,9 +431,8 @@ static GtkCssImage *
 gtk_css_image_linear_compute (GtkCssImage             *image,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   GtkCssImageLinear *linear = GTK_CSS_IMAGE_LINEAR (image);
@@ -443,7 +442,7 @@ gtk_css_image_linear_compute (GtkCssImage             *image,
   copy = g_object_new (GTK_TYPE_CSS_IMAGE_LINEAR, NULL);
   copy->repeating = linear->repeating;
 
-  copy->angle = _gtk_css_value_compute (linear->angle, property_id, provider, scale, values, parent_values, dependencies);
+  copy->angle = _gtk_css_value_compute (linear->angle, property_id, provider, style, parent_style, dependencies);
   
   g_array_set_size (copy->stops, linear->stops->len);
   for (i = 0; i < linear->stops->len; i++)
@@ -454,12 +453,12 @@ gtk_css_image_linear_compute (GtkCssImage             *image,
       stop = &g_array_index (linear->stops, GtkCssImageLinearColorStop, i);
       scopy = &g_array_index (copy->stops, GtkCssImageLinearColorStop, i);
               
-      scopy->color = _gtk_css_value_compute (stop->color, property_id, provider, scale, values, parent_values, &child_deps);
+      scopy->color = _gtk_css_value_compute (stop->color, property_id, provider, style, parent_style, &child_deps);
       *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
       
       if (stop->offset)
         {
-          scopy->offset = _gtk_css_value_compute (stop->offset, property_id, provider, scale, values, parent_values, &child_deps);
+          scopy->offset = _gtk_css_value_compute (stop->offset, property_id, provider, style, parent_style, &child_deps);
           *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
         }
       else
index b253a2fe2a3ce462f49c2f095ee3003751dc0534..5c53f39644dab58b6e31467bfd8b445e14c9095f 100644 (file)
@@ -58,9 +58,8 @@ struct _GtkCssImageClass
   GtkCssImage *(* compute)                         (GtkCssImage                *image,
                                                     guint                       property_id,
                                                     GtkStyleProviderPrivate    *provider,
-                                                   int                         scale,
-                                                    GtkCssStyle       *values,
-                                                    GtkCssStyle       *parent_values,
+                                                    GtkCssStyle                *style,
+                                                    GtkCssStyle                *parent_style,
                                                     GtkCssDependencies         *dependencies);
   /* compare two images for equality */
   gboolean     (* equal)                           (GtkCssImage                *image1,
@@ -96,9 +95,8 @@ double         _gtk_css_image_get_aspect_ratio     (GtkCssImage                *
 GtkCssImage *  _gtk_css_image_compute              (GtkCssImage                *image,
                                                     guint                       property_id,
                                                     GtkStyleProviderPrivate    *provider,
-                                                   int                        scale,
-                                                    GtkCssStyle       *values,
-                                                    GtkCssStyle       *parent_values,
+                                                    GtkCssStyle                *style,
+                                                    GtkCssStyle                *parent_style,
                                                     GtkCssDependencies         *dependencies);
 gboolean       _gtk_css_image_equal                (GtkCssImage                *image1,
                                                     GtkCssImage                *image2);
index b0093385e8be5073cce6c60b5ea8cd964bc70e89..9bc2061ac1d3eee5f6040169ed5a43fe7be315a0 100644 (file)
@@ -21,6 +21,8 @@
 
 #include "gtkcssimagescaledprivate.h"
 
+#include "gtkstyleproviderprivate.h"
+
 G_DEFINE_TYPE (GtkCssImageScaled, _gtk_css_image_scaled, GTK_TYPE_CSS_IMAGE)
 
 static int
@@ -94,15 +96,15 @@ static GtkCssImage *
 gtk_css_image_scaled_compute (GtkCssImage             *image,
                              guint                    property_id,
                              GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                             GtkCssStyle    *values,
-                             GtkCssStyle    *parent_values,
+                             GtkCssStyle             *style,
+                             GtkCssStyle             *parent_style,
                              GtkCssDependencies      *dependencies)
 {
   GtkCssImageScaled *scaled = GTK_CSS_IMAGE_SCALED (image);
   GtkCssImageScaled *copy;
-  int i;
+  int i, scale;
 
+  scale = _gtk_style_provider_private_get_scale (provider);
   scale = MAX(MIN (scale, scaled->n_images), 1);
 
   if (scaled->scale == scale)
@@ -119,9 +121,8 @@ gtk_css_image_scaled_compute (GtkCssImage             *image,
             copy->images[i] = _gtk_css_image_compute (scaled->images[i],
                                                       property_id,
                                                       provider,
-                                                      scale,
-                                                      values,
-                                                      parent_values,
+                                                      style,
+                                                      parent_style,
                                                       dependencies);
           else
             copy->images[i] = g_object_ref (scaled->images[i]);
index e04b9f2e7d2f519fa7c81802a2ab1f2fcc771795..136a02e75b0d2bbd2a85c602ebc80344e0c7284a 100644 (file)
@@ -123,9 +123,8 @@ static GtkCssImage *
 gtk_css_image_url_compute (GtkCssImage             *image,
                            guint                    property_id,
                            GtkStyleProviderPrivate *provider,
-                          int                      scale,
-                           GtkCssStyle    *values,
-                           GtkCssStyle    *parent_values,
+                           GtkCssStyle             *style,
+                           GtkCssStyle             *parent_style,
                            GtkCssDependencies      *dependencies)
 {
   GtkCssImageUrl *url = GTK_CSS_IMAGE_URL (image);
index febfef9d38e580ebc8d83837488a519f6f25b9da..86d81455b653ba2402fe7d66918ca134a868b8e0 100644 (file)
@@ -37,9 +37,8 @@ static GtkCssValue *
 gtk_css_value_image_compute (GtkCssValue             *value,
                              guint                    property_id,
                              GtkStyleProviderPrivate *provider,
-                            int                      scale,
-                             GtkCssStyle    *values,
-                             GtkCssStyle    *parent_values,
+                             GtkCssStyle             *style,
+                             GtkCssStyle             *parent_style,
                              GtkCssDependencies      *dependencies)
 {
   GtkCssImage *image, *computed;
@@ -49,7 +48,7 @@ gtk_css_value_image_compute (GtkCssValue             *value,
   if (image == NULL)
     return _gtk_css_value_ref (value);
 
-  computed = _gtk_css_image_compute (image, property_id, provider, scale, values, parent_values, dependencies);
+  computed = _gtk_css_image_compute (image, property_id, provider, style, parent_style, dependencies);
 
   if (computed == image)
     {
index 90dae5e16382032bd1d64df2c77e499b74d688f3..cf7549829ccb11e76e4f7d8894d5e936a0918030 100644 (file)
@@ -37,24 +37,22 @@ static GtkCssValue *
 gtk_css_value_inherit_compute (GtkCssValue             *value,
                                guint                    property_id,
                                GtkStyleProviderPrivate *provider,
-                              int                      scale,
-                               GtkCssStyle    *values,
-                               GtkCssStyle    *parent_values,
+                               GtkCssStyle             *style,
+                               GtkCssStyle             *parent_style,
                                GtkCssDependencies      *dependencies)
 {
-  if (parent_values)
+  if (parent_style)
     {
       *dependencies = GTK_CSS_EQUALS_PARENT;
-      return _gtk_css_value_ref (gtk_css_style_get_value (parent_values, property_id));
+      return _gtk_css_value_ref (gtk_css_style_get_value (parent_style, property_id));
     }
   else
     {
       return _gtk_css_value_compute (_gtk_css_initial_value_get (),
                                      property_id,
                                      provider,
-                                    scale,
-                                     values,
-                                     parent_values,
+                                     style,
+                                     parent_style,
                                      dependencies);
     }
 }
index 0a16cb940c91ae15228cb5697c78bc0bb609de16..5b1be1019c613eedbb089b3022d4a0339fe76bc9 100644 (file)
@@ -41,9 +41,8 @@ static GtkCssValue *
 gtk_css_value_initial_compute (GtkCssValue             *value,
                                guint                    property_id,
                                GtkStyleProviderPrivate *provider,
-                              int                      scale,
-                               GtkCssStyle    *values,
-                               GtkCssStyle    *parent_values,
+                               GtkCssStyle             *style,
+                               GtkCssStyle             *parent_style,
                                GtkCssDependencies      *dependencies)
 {
   GtkSettings *settings;
@@ -94,9 +93,8 @@ gtk_css_value_initial_compute (GtkCssValue             *value,
   return _gtk_css_value_compute (_gtk_css_style_property_get_initial_value (_gtk_css_style_property_lookup_by_id (property_id)),
                                  property_id,
                                  provider,
-                                scale,
-                                 values,
-                                 parent_values,
+                                 style,
+                                 parent_style,
                                  dependencies);
 }
 
index e40bdad1571c52972090618c15855ac981babc62..02605ad947c088e03f4be8aff4b821c20af0206f 100644 (file)
@@ -437,7 +437,6 @@ _gtk_css_keyframes_print (GtkCssKeyframes *keyframes,
 GtkCssKeyframes *
 _gtk_css_keyframes_compute (GtkCssKeyframes         *keyframes,
                             GtkStyleProviderPrivate *provider,
-                           int                      scale,
                             GtkCssStyle             *style,
                             GtkCssStyle             *parent_style)
 {
@@ -466,7 +465,6 @@ _gtk_css_keyframes_compute (GtkCssKeyframes         *keyframes,
           KEYFRAMES_VALUE (resolved, k, p) =  _gtk_css_value_compute (KEYFRAMES_VALUE (keyframes, k, p),
                                                                       resolved->property_ids[p],
                                                                       provider,
-                                                                     scale,
                                                                       style,
                                                                       parent_style,
                                                                       NULL);
index 0b88d638a425a8fe225872930cf25fd2f219fb06..b9dc13e62765bba173a2be94c043195a6c680837 100644 (file)
@@ -38,7 +38,6 @@ void                _gtk_css_keyframes_print                  (GtkCssKeyframes
 
 GtkCssKeyframes *   _gtk_css_keyframes_compute                (GtkCssKeyframes         *keyframes,
                                                                GtkStyleProviderPrivate *provider,
-                                                              int                      scale,
                                                                GtkCssStyle             *style,
                                                                GtkCssStyle             *parent_style);
 
index c48223194dcd76d26344b79ec3f1690de7e6ecf2..66fe47213be6366b75f1c1e92e5c557bf0ba359c 100644 (file)
@@ -105,7 +105,6 @@ _gtk_css_lookup_set (GtkCssLookup  *lookup,
 void
 _gtk_css_lookup_resolve (GtkCssLookup            *lookup,
                          GtkStyleProviderPrivate *provider,
-                        int                      scale,
                          GtkCssStaticStyle       *style,
                          GtkCssStyle             *parent_style)
 {
@@ -124,7 +123,6 @@ _gtk_css_lookup_resolve (GtkCssLookup            *lookup,
           _gtk_bitmask_get (lookup->missing, i))
         gtk_css_static_style_compute_value (GTK_CSS_STATIC_STYLE (style),
                                             provider,
-                                            scale,
                                             parent_style,
                                             i,
                                             lookup->values[i].value,
index 62c6a30768b61b8764e4912b7bff7833739244d3..cb504661c14fe1109db88f198614554b70f0f722 100644 (file)
@@ -50,7 +50,6 @@ void                    _gtk_css_lookup_set                     (GtkCssLookup
                                                                  GtkCssValue                *value);
 void                    _gtk_css_lookup_resolve                 (GtkCssLookup               *lookup,
                                                                  GtkStyleProviderPrivate    *provider,
-                                                                int                         scale,
                                                                  GtkCssStaticStyle          *style,
                                                                  GtkCssStyle                *parent_style);
 
index 1c9531735134cfff231b159120f0004b78d454dc..009c9704f74ddf48db325f113aefa15205be8cc8 100644 (file)
@@ -38,30 +38,29 @@ gtk_css_value_number_free (GtkCssValue *value)
 static double
 get_base_font_size (guint                    property_id,
                     GtkStyleProviderPrivate *provider,
-                    GtkCssStyle    *values,
-                    GtkCssStyle    *parent_values,
+                    GtkCssStyle             *style,
+                    GtkCssStyle             *parent_style,
                     GtkCssDependencies      *dependencies)
 {
   if (property_id == GTK_CSS_PROPERTY_FONT_SIZE)
     {
       *dependencies = GTK_CSS_DEPENDS_ON_PARENT;
-      if (parent_values)
-        return _gtk_css_number_value_get (gtk_css_style_get_value (parent_values, GTK_CSS_PROPERTY_FONT_SIZE), 100);
+      if (parent_style)
+        return _gtk_css_number_value_get (gtk_css_style_get_value (parent_style, GTK_CSS_PROPERTY_FONT_SIZE), 100);
       else
         return _gtk_css_font_size_get_default (provider);
     }
 
   *dependencies = GTK_CSS_DEPENDS_ON_FONT_SIZE;
-  return _gtk_css_number_value_get (gtk_css_style_get_value (values, GTK_CSS_PROPERTY_FONT_SIZE), 100);
+  return _gtk_css_number_value_get (gtk_css_style_get_value (style, GTK_CSS_PROPERTY_FONT_SIZE), 100);
 }
                     
 static GtkCssValue *
 gtk_css_value_number_compute (GtkCssValue             *number,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   GtkBorderStyle border_style;
@@ -70,27 +69,27 @@ gtk_css_value_number_compute (GtkCssValue             *number,
   switch (property_id)
     {
       case GTK_CSS_PROPERTY_BORDER_TOP_WIDTH:
-        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (values, GTK_CSS_PROPERTY_BORDER_TOP_STYLE));
+        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_TOP_STYLE));
         if (border_style == GTK_BORDER_STYLE_NONE || border_style == GTK_BORDER_STYLE_HIDDEN)
           return _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
         break;
       case GTK_CSS_PROPERTY_BORDER_RIGHT_WIDTH:
-        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (values, GTK_CSS_PROPERTY_BORDER_RIGHT_STYLE));
+        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_RIGHT_STYLE));
         if (border_style == GTK_BORDER_STYLE_NONE || border_style == GTK_BORDER_STYLE_HIDDEN)
           return _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
         break;
       case GTK_CSS_PROPERTY_BORDER_BOTTOM_WIDTH:
-        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (values, GTK_CSS_PROPERTY_BORDER_BOTTOM_STYLE));
+        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_BOTTOM_STYLE));
         if (border_style == GTK_BORDER_STYLE_NONE || border_style == GTK_BORDER_STYLE_HIDDEN)
           return _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
         break;
       case GTK_CSS_PROPERTY_BORDER_LEFT_WIDTH:
-        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (values, GTK_CSS_PROPERTY_BORDER_LEFT_STYLE));
+        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (style, GTK_CSS_PROPERTY_BORDER_LEFT_STYLE));
         if (border_style == GTK_BORDER_STYLE_NONE || border_style == GTK_BORDER_STYLE_HIDDEN)
           return _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
         break;
       case GTK_CSS_PROPERTY_OUTLINE_WIDTH:
-        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (values, GTK_CSS_PROPERTY_OUTLINE_STYLE));
+        border_style = _gtk_css_border_style_value_get(gtk_css_style_get_value (style, GTK_CSS_PROPERTY_OUTLINE_STYLE));
         if (border_style == GTK_BORDER_STYLE_NONE || border_style == GTK_BORDER_STYLE_HIDDEN)
           return _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
         break;
@@ -107,7 +106,7 @@ gtk_css_value_number_compute (GtkCssValue             *number,
       /* percentages for font sizes are computed, other percentages aren't */
       if (property_id == GTK_CSS_PROPERTY_FONT_SIZE)
         return _gtk_css_number_value_new (number->value / 100.0 * 
-                                          get_base_font_size (property_id, provider, values, parent_values, dependencies),
+                                          get_base_font_size (property_id, provider, style, parent_style, dependencies),
                                           GTK_CSS_PX);
     case GTK_CSS_NUMBER:
     case GTK_CSS_PX:
@@ -135,13 +134,13 @@ gtk_css_value_number_compute (GtkCssValue             *number,
       break;
     case GTK_CSS_EM:
       return _gtk_css_number_value_new (number->value *
-                                        get_base_font_size (property_id, provider, values, parent_values, dependencies),
+                                        get_base_font_size (property_id, provider, style, parent_style, dependencies),
                                         GTK_CSS_PX);
       break;
     case GTK_CSS_EX:
       /* for now we pretend ex is half of em */
       return _gtk_css_number_value_new (number->value * 0.5 * 
-                                        get_base_font_size (property_id, provider, values, parent_values, dependencies),
+                                        get_base_font_size (property_id, provider, style, parent_style, dependencies),
                                         GTK_CSS_PX);
     case GTK_CSS_RAD:
       return _gtk_css_number_value_new (number->value * 360.0 / (2 * G_PI),
index 371ec69641010fd6bac237e67de4882e2233bd35..ef750fc12e7274ccb920a8875ba9ec9ea3201b1b 100644 (file)
@@ -40,16 +40,15 @@ static GtkCssValue *
 gtk_css_value_position_compute (GtkCssValue             *position,
                                 guint                    property_id,
                                 GtkStyleProviderPrivate *provider,
-                               int                      scale,
-                                GtkCssStyle    *values,
-                                GtkCssStyle    *parent_values,
+                                GtkCssStyle             *style,
+                                GtkCssStyle             *parent_style,
                                 GtkCssDependencies      *dependencies)
 {
   GtkCssValue *x, *y;
   GtkCssDependencies x_deps, y_deps;
 
-  x = _gtk_css_value_compute (position->x, property_id, provider, scale, values, parent_values, &x_deps);
-  y = _gtk_css_value_compute (position->y, property_id, provider, scale, values, parent_values, &y_deps);
+  x = _gtk_css_value_compute (position->x, property_id, provider, style, parent_style, &x_deps);
+  y = _gtk_css_value_compute (position->y, property_id, provider, style, parent_style, &y_deps);
   *dependencies = _gtk_css_dependencies_union (x_deps, y_deps);
   if (x == position->x && y == position->y)
     {
index efc89e89bb9042898b82fa4d26248d9c4c735bb4..c121757528de6009291be2de2b5b7f2fcd663c5b 100644 (file)
@@ -37,9 +37,8 @@ static GtkCssValue *
 gtk_css_value_repeat_compute (GtkCssValue             *value,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   return _gtk_css_value_ref (value);
index f994819a736917fc98ec93bc8ddac2f803244579..fde22fe285af7c47cdfaecb2b70f26c00828991b 100644 (file)
@@ -37,9 +37,8 @@ static GtkCssValue *
 gtk_css_value_rgba_compute (GtkCssValue             *value,
                             guint                    property_id,
                             GtkStyleProviderPrivate *provider,
-                           int                      scale,
-                            GtkCssStyle    *values,
-                            GtkCssStyle    *parent_values,
+                            GtkCssStyle             *style,
+                            GtkCssStyle             *parent_style,
                             GtkCssDependencies      *dependencies)
 {
   return _gtk_css_value_ref (value);
index f0bae5c793db9902acee7fad5099d580b9efd3dc..0009469438864059f2e1a9b763f04593a3dd4c54 100644 (file)
@@ -54,9 +54,8 @@ static GtkCssValue *
 gtk_css_value_shadows_compute (GtkCssValue             *value,
                                guint                    property_id,
                                GtkStyleProviderPrivate *provider,
-                              int                      scale,
-                               GtkCssStyle    *values,
-                               GtkCssStyle    *parent_values,
+                               GtkCssStyle             *style,
+                               GtkCssStyle             *parent_style,
                                GtkCssDependencies      *dependencies)
 {
   GtkCssValue *result;
@@ -69,7 +68,7 @@ gtk_css_value_shadows_compute (GtkCssValue             *value,
   result = gtk_css_shadows_value_new (value->values, value->len);
   for (i = 0; i < value->len; i++)
     {
-      result->values[i] = _gtk_css_value_compute (value->values[i], property_id, provider, scale, values, parent_values, &child_deps);
+      result->values[i] = _gtk_css_value_compute (value->values[i], property_id, provider, style, parent_style, &child_deps);
       *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
     }
 
index d7f3963200f55a66b0b43828490f33594596335a..36e984099706339fc43a206804e8b4b16022830f 100644 (file)
@@ -66,32 +66,31 @@ static GtkCssValue *
 gtk_css_value_shadow_compute (GtkCssValue             *shadow,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   GtkCssValue *hoffset, *voffset, *radius, *spread, *color;
   GtkCssDependencies child_deps;
 
   child_deps = 0;
-  hoffset = _gtk_css_value_compute (shadow->hoffset, property_id, provider, scale, values, parent_values, &child_deps);
+  hoffset = _gtk_css_value_compute (shadow->hoffset, property_id, provider, style, parent_style, &child_deps);
   *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
 
   child_deps = 0;
-  voffset = _gtk_css_value_compute (shadow->voffset, property_id, provider, scale, values, parent_values, &child_deps);
+  voffset = _gtk_css_value_compute (shadow->voffset, property_id, provider, style, parent_style, &child_deps);
   *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
 
   child_deps = 0;
-  radius = _gtk_css_value_compute (shadow->radius, property_id, provider, scale, values, parent_values, &child_deps);
+  radius = _gtk_css_value_compute (shadow->radius, property_id, provider, style, parent_style, &child_deps);
   *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
 
   child_deps = 0;
-  spread = _gtk_css_value_compute (shadow->spread, property_id, provider, scale, values, parent_values, &child_deps),
+  spread = _gtk_css_value_compute (shadow->spread, property_id, provider, style, parent_style, &child_deps),
   *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
 
   child_deps = 0;
-  color = _gtk_css_value_compute (shadow->color, property_id, provider, scale, values, parent_values, &child_deps);
+  color = _gtk_css_value_compute (shadow->color, property_id, provider, style, parent_style, &child_deps);
   *dependencies = _gtk_css_dependencies_union (*dependencies, child_deps);
 
   return gtk_css_shadow_value_new (hoffset, voffset, radius, spread, shadow->inset, color);
index a127b69968207037609e8d92408ad48436958c83..9b0e3d457fefd63915b71e0ea2aa43d380941379 100644 (file)
@@ -198,7 +198,6 @@ gtk_css_static_style_get_default (void)
 
   result = gtk_css_static_style_new_compute (GTK_STYLE_PROVIDER_PRIVATE (settings),
                                              NULL,
-                                             1,
                                              NULL);
   g_object_set_qdata_full (G_OBJECT (settings), style_quark, result, g_object_unref);
 
@@ -208,7 +207,6 @@ gtk_css_static_style_get_default (void)
 GtkCssStyle *
 gtk_css_static_style_new_compute (GtkStyleProviderPrivate *provider,
                                   const GtkCssMatcher     *matcher,
-                                  int                      scale,
                                   GtkCssStyle             *parent)
 {
   GtkCssStaticStyle *result;
@@ -229,7 +227,6 @@ gtk_css_static_style_new_compute (GtkStyleProviderPrivate *provider,
 
   _gtk_css_lookup_resolve (lookup, 
                            provider,
-                          scale,
                            result,
                            parent);
 
@@ -243,7 +240,6 @@ gtk_css_static_style_new_update (GtkCssStaticStyle       *style,
                                  const GtkBitmask        *parent_changes,
                                  GtkStyleProviderPrivate *provider,
                                  const GtkCssMatcher     *matcher,
-                                 int                      scale,
                                  GtkCssStyle             *parent)
 {
   GtkCssStaticStyle *result;
@@ -295,7 +291,6 @@ gtk_css_static_style_new_update (GtkCssStaticStyle       *style,
 
   _gtk_css_lookup_resolve (lookup, 
                            provider,
-                           scale,
                            result,
                            parent);
 
@@ -308,7 +303,6 @@ gtk_css_static_style_new_update (GtkCssStaticStyle       *style,
 void
 gtk_css_static_style_compute_value (GtkCssStaticStyle       *style,
                                     GtkStyleProviderPrivate *provider,
-                                    int                      scale,
                                     GtkCssStyle             *parent_style,
                                     guint                    id,
                                     GtkCssValue             *specified,
@@ -338,7 +332,7 @@ gtk_css_static_style_compute_value (GtkCssStaticStyle       *style,
   else
     _gtk_css_value_ref (specified);
 
-  value = _gtk_css_value_compute (specified, id, provider, scale, GTK_CSS_STYLE (style), parent_style, &dependencies);
+  value = _gtk_css_value_compute (specified, id, provider, GTK_CSS_STYLE (style), parent_style, &dependencies);
 
   gtk_css_static_style_set_value (style, id, value, section);
 
index 281a6f1d74a7cd7ff3e4dc87460d14485efdebec..6abc20541fd8237bc95884c7f98ad7fff4e399a6 100644 (file)
@@ -60,18 +60,15 @@ GType                   gtk_css_static_style_get_type           (void) G_GNUC_CO
 GtkCssStyle *           gtk_css_static_style_get_default        (void);
 GtkCssStyle *           gtk_css_static_style_new_compute        (GtkStyleProviderPrivate *provider,
                                                                  const GtkCssMatcher    *matcher,
-                                                                 int                     scale,
                                                                  GtkCssStyle            *parent);
 GtkCssStyle *           gtk_css_static_style_new_update         (GtkCssStaticStyle      *style,
                                                                  const GtkBitmask       *parent_changes,
                                                                  GtkStyleProviderPrivate *provider,
                                                                  const GtkCssMatcher    *matcher,
-                                                                 int                     scale,
                                                                  GtkCssStyle            *parent);
 
 void                    gtk_css_static_style_compute_value      (GtkCssStaticStyle      *style,
                                                                  GtkStyleProviderPrivate*provider,
-                                                                int                     scale,
                                                                  GtkCssStyle            *parent_style,
                                                                  guint                   id,
                                                                  GtkCssValue            *specified,
index ee62822f8a4512b9300bed22246129f82469e489..95353a2a05d82a31b5ab8df7fac726dcf2ee26d7 100644 (file)
@@ -37,9 +37,8 @@ static GtkCssValue *
 gtk_css_value_string_compute (GtkCssValue             *value,
                               guint                    property_id,
                               GtkStyleProviderPrivate *provider,
-                             int                      scale,
-                              GtkCssStyle    *values,
-                              GtkCssStyle    *parent_values,
+                              GtkCssStyle             *style,
+                              GtkCssStyle             *parent_style,
                               GtkCssDependencies      *dependencies)
 {
   return _gtk_css_value_ref (value);
index 901f0939422ae3f75f150fc115fb7dedfd6e2036..beaf4662e51afd6c76fe5e767525b26700b3f459 100644 (file)
@@ -231,9 +231,8 @@ gtk_css_transform_compute (GtkCssTransform         *dest,
                            GtkCssTransform         *src,
                            guint                    property_id,
                            GtkStyleProviderPrivate *provider,
-                           int                      scale,
-                           GtkCssStyle    *values,
-                           GtkCssStyle    *parent_values,
+                           GtkCssStyle    *style,
+                           GtkCssStyle    *parent_style,
                            GtkCssDependencies      *dependencies)
 {
   GtkCssDependencies x_deps, y_deps;
@@ -246,33 +245,33 @@ gtk_css_transform_compute (GtkCssTransform         *dest,
       return TRUE;
     case GTK_CSS_TRANSFORM_TRANSLATE:
       x_deps = y_deps = 0;
-      dest->translate.x = _gtk_css_value_compute (src->translate.x, property_id, provider, scale, values, parent_values, &x_deps);
-      dest->translate.y = _gtk_css_value_compute (src->translate.y, property_id, provider, scale, values, parent_values, &y_deps);
+      dest->translate.x = _gtk_css_value_compute (src->translate.x, property_id, provider, style, parent_style, &x_deps);
+      dest->translate.y = _gtk_css_value_compute (src->translate.y, property_id, provider, style, parent_style, &y_deps);
       *dependencies = _gtk_css_dependencies_union (x_deps, y_deps);
       return dest->translate.x == src->translate.x
           && dest->translate.y == src->translate.y;
     case GTK_CSS_TRANSFORM_ROTATE:
-      dest->rotate.rotate = _gtk_css_value_compute (src->rotate.rotate, property_id, provider, scale, values, parent_values, dependencies);
+      dest->rotate.rotate = _gtk_css_value_compute (src->rotate.rotate, property_id, provider, style, parent_style, dependencies);
       return dest->rotate.rotate == src->rotate.rotate;
     case GTK_CSS_TRANSFORM_SCALE:
       x_deps = y_deps = 0;
-      dest->scale.x = _gtk_css_value_compute (src->scale.x, property_id, provider, scale, values, parent_values, &x_deps);
-      dest->scale.y = _gtk_css_value_compute (src->scale.y, property_id, provider, scale, values, parent_values, &y_deps);
+      dest->scale.x = _gtk_css_value_compute (src->scale.x, property_id, provider, style, parent_style, &x_deps);
+      dest->scale.y = _gtk_css_value_compute (src->scale.y, property_id, provider, style, parent_style, &y_deps);
       *dependencies = _gtk_css_dependencies_union (x_deps, y_deps);
       return dest->scale.x == src->scale.x
           && dest->scale.y == src->scale.y;
     case GTK_CSS_TRANSFORM_SKEW:
       x_deps = y_deps = 0;
-      dest->skew.x = _gtk_css_value_compute (src->skew.x, property_id, provider, scale, values, parent_values, &x_deps);
-      dest->skew.y = _gtk_css_value_compute (src->skew.y, property_id, provider, scale, values, parent_values, &y_deps);
+      dest->skew.x = _gtk_css_value_compute (src->skew.x, property_id, provider, style, parent_style, &x_deps);
+      dest->skew.y = _gtk_css_value_compute (src->skew.y, property_id, provider, style, parent_style, &y_deps);
       *dependencies = _gtk_css_dependencies_union (x_deps, y_deps);
       return dest->skew.x == src->skew.x
           && dest->skew.y == src->skew.y;
     case GTK_CSS_TRANSFORM_SKEW_X:
-      dest->skew_x.skew = _gtk_css_value_compute (src->skew_x.skew, property_id, provider, scale, values, parent_values, dependencies);
+      dest->skew_x.skew = _gtk_css_value_compute (src->skew_x.skew, property_id, provider, style, parent_style, dependencies);
       return dest->skew_x.skew == src->skew_x.skew;
     case GTK_CSS_TRANSFORM_SKEW_Y:
-      dest->skew_y.skew = _gtk_css_value_compute (src->skew_y.skew, property_id, provider, scale, values, parent_values, dependencies);
+      dest->skew_y.skew = _gtk_css_value_compute (src->skew_y.skew, property_id, provider, style, parent_style, dependencies);
       return dest->skew_y.skew == src->skew_y.skew;
     case GTK_CSS_TRANSFORM_NONE:
     default:
@@ -285,9 +284,8 @@ static GtkCssValue *
 gtk_css_value_transform_compute (GtkCssValue             *value,
                                  guint                    property_id,
                                  GtkStyleProviderPrivate *provider,
-                                int                      scale,
-                                 GtkCssStyle    *values,
-                                 GtkCssStyle    *parent_values,
+                                 GtkCssStyle             *style,
+                                 GtkCssStyle             *parent_style,
                                  GtkCssDependencies      *dependencies)
 {
   GtkCssDependencies transform_deps;
@@ -308,9 +306,8 @@ gtk_css_value_transform_compute (GtkCssValue             *value,
                                              &value->transforms[i],
                                              property_id,
                                              provider,
-                                             scale,
-                                             values,
-                                             parent_values,
+                                             style,
+                                             parent_style,
                                              &transform_deps);
       *dependencies = _gtk_css_dependencies_union (*dependencies, transform_deps);
     }
index cfce35fed7fec20218fd955f668880fcd545f8c0..202e3dda9100a1bc4bc53f00f3f3737ae99e5e78 100644 (file)
@@ -38,14 +38,13 @@ static GtkCssValue *
 gtk_css_value_typed_compute (GtkCssValue             *value,
                              guint                    property_id,
                              GtkStyleProviderPrivate *provider,
-                            int                      scale,
-                             GtkCssStyle    *values,
-                             GtkCssStyle    *parent_values,
+                             GtkCssStyle             *style,
+                             GtkCssStyle             *parent_style,
                              GtkCssDependencies      *dependencies)
 {
   GtkCssCustomProperty *custom = GTK_CSS_CUSTOM_PROPERTY (_gtk_css_style_property_lookup_by_id (property_id));
 
-  return _gtk_css_style_funcs_compute_value (provider, values, parent_values, custom->pspec->value_type, value, dependencies);
+  return _gtk_css_style_funcs_compute_value (provider, style, parent_style, custom->pspec->value_type, value, dependencies);
 }
 
 static gboolean
index 73b0c6f4a98d8b5ddc2c2ce277bc8c3424bf54e0..dabbcb175bfde47ab9f71d4f0fbdfd9fcc745dd5 100644 (file)
@@ -38,9 +38,8 @@ static GtkCssValue *
 gtk_css_value_unset_compute (GtkCssValue             *value,
                              guint                    property_id,
                              GtkStyleProviderPrivate *provider,
-                            int                      scale,
-                             GtkCssStyle    *values,
-                             GtkCssStyle    *parent_values,
+                             GtkCssStyle             *style,
+                             GtkCssStyle             *parent_style,
                              GtkCssDependencies      *dependencies)
 {
   GtkCssStyleProperty *property;
@@ -56,9 +55,8 @@ gtk_css_value_unset_compute (GtkCssValue             *value,
   return _gtk_css_value_compute (unset_value,
                                  property_id,
                                  provider,
-                                scale,
-                                 values,
-                                 parent_values,
+                                 style,
+                                 parent_style,
                                  dependencies);
 }
 
index ec73f41c5df5d939432d263a09d9e32cff77c978..1dc2f1ceacfed50934fff3225c6df73bd7226339 100644 (file)
@@ -87,23 +87,22 @@ GtkCssValue *
 _gtk_css_value_compute (GtkCssValue             *value,
                         guint                    property_id,
                         GtkStyleProviderPrivate *provider,
-                       int                      scale,
-                        GtkCssStyle    *values,
-                        GtkCssStyle    *parent_values,
+                        GtkCssStyle             *style,
+                        GtkCssStyle             *parent_style,
                         GtkCssDependencies      *dependencies)
 {
   GtkCssDependencies fallback;
 
   gtk_internal_return_val_if_fail (value != NULL, NULL);
   gtk_internal_return_val_if_fail (GTK_IS_STYLE_PROVIDER_PRIVATE (provider), NULL);
-  gtk_internal_return_val_if_fail (GTK_IS_CSS_STYLE (values), NULL);
-  gtk_internal_return_val_if_fail (parent_values == NULL || GTK_IS_CSS_STYLE (parent_values), NULL);
+  gtk_internal_return_val_if_fail (GTK_IS_CSS_STYLE (style), NULL);
+  gtk_internal_return_val_if_fail (parent_style == NULL || GTK_IS_CSS_STYLE (parent_style), NULL);
 
   if (dependencies == NULL)
     dependencies = &fallback;
   *dependencies = 0;
 
-  return value->class->compute (value, property_id, provider, scale, values, parent_values, dependencies);
+  return value->class->compute (value, property_id, provider, style, parent_style, dependencies);
 }
 
 gboolean
index 973ecc555946281354a3363a349f8ea79f42314e..ee244ce12ffad90162ab18d5f71f32d0faede62a 100644 (file)
@@ -43,9 +43,8 @@ struct _GtkCssValueClass {
   GtkCssValue * (* compute)                           (GtkCssValue                *value,
                                                        guint                       property_id,
                                                        GtkStyleProviderPrivate    *provider,
-                                                      int                         scale,
-                                                       GtkCssStyle       *values,
-                                                       GtkCssStyle       *parent_values,
+                                                       GtkCssStyle                *style,
+                                                       GtkCssStyle                *parent_style,
                                                        GtkCssDependencies         *dependencies);
   gboolean      (* equal)                             (const GtkCssValue          *value1,
                                                        const GtkCssValue          *value2);
@@ -69,9 +68,8 @@ void         _gtk_css_value_unref                     (GtkCssValue
 GtkCssValue *_gtk_css_value_compute                   (GtkCssValue                *value,
                                                        guint                       property_id,
                                                        GtkStyleProviderPrivate    *provider,
-                                                      int                         scale,
-                                                       GtkCssStyle       *values,
-                                                       GtkCssStyle       *parent_values,
+                                                       GtkCssStyle                *style,
+                                                       GtkCssStyle                *parent_style,
                                                        GtkCssDependencies         *dependencies);
 gboolean     _gtk_css_value_equal                     (const GtkCssValue          *value1,
                                                        const GtkCssValue          *value2);
index 9219d61b59de94260e5a9c025c872d999c436a11..13df0bd8b5f10ebae9cd73c303d5316785345ad7 100644 (file)
@@ -174,6 +174,14 @@ gtk_style_cascade_get_color (GtkStyleProviderPrivate *provider,
   return NULL;
 }
 
+static int
+gtk_style_cascade_get_scale (GtkStyleProviderPrivate *provider)
+{
+  GtkStyleCascade *cascade = GTK_STYLE_CASCADE (provider);
+
+  return cascade->scale;
+}
+
 static GtkCssKeyframes *
 gtk_style_cascade_get_keyframes (GtkStyleProviderPrivate *provider,
                                  const char              *name)
@@ -235,6 +243,7 @@ gtk_style_cascade_provider_private_iface_init (GtkStyleProviderPrivateInterface
 {
   iface->get_color = gtk_style_cascade_get_color;
   iface->get_settings = gtk_style_cascade_get_settings;
+  iface->get_scale = gtk_style_cascade_get_scale;
   iface->get_keyframes = gtk_style_cascade_get_keyframes;
   iface->lookup = gtk_style_cascade_lookup;
 }
index 9b4798e678629d972622c6cf745cf9889340bb28..a1d15331aa69df8eb8d517d71d593daef6c8d440 100644 (file)
@@ -825,7 +825,6 @@ update_properties (GtkStyleContext             *context,
                                             parent_changes,
                                             GTK_STYLE_PROVIDER_PRIVATE (priv->cascade),
                                             &matcher,
-                                            _gtk_style_cascade_get_scale (priv->cascade),
                                             parent);
 
   gtk_widget_path_free (path);
@@ -857,12 +856,10 @@ build_properties (GtkStyleContext             *context,
   if (_gtk_css_matcher_init (&matcher, path))
     style = gtk_css_static_style_new_compute (GTK_STYLE_PROVIDER_PRIVATE (priv->cascade),
                                               &matcher,
-                                              _gtk_style_cascade_get_scale (priv->cascade),
                                               parent);
   else
     style = gtk_css_static_style_new_compute (GTK_STYLE_PROVIDER_PRIVATE (priv->cascade),
                                               NULL,
-                                              _gtk_style_cascade_get_scale (priv->cascade),
                                               parent);
 
   gtk_widget_path_free (path);
@@ -3011,7 +3008,6 @@ _gtk_style_context_validate (GtkStyleContext  *context,
                                           priv->parent ? gtk_style_context_lookup_style (priv->parent) : NULL,
                                           timestamp,
                                           GTK_STYLE_PROVIDER_PRIVATE (priv->cascade),
-                                          _gtk_style_cascade_get_scale (priv->cascade),
                                           gtk_style_context_should_create_transitions (context, current) ? current : NULL);
   
       gtk_style_context_clear_cache (context);
index 35a6f6e0f6483e2ae9023c3de92cf3b9ccf28def..6c11b03acfb933d242c08026c5a2b54b5639aaf7 100644 (file)
@@ -127,3 +127,17 @@ _gtk_style_provider_private_get_settings (GtkStyleProviderPrivate *provider)
   return iface->get_settings (provider);
 }
 
+int
+_gtk_style_provider_private_get_scale (GtkStyleProviderPrivate *provider)
+{
+  GtkStyleProviderPrivateInterface *iface;
+
+  g_return_val_if_fail (GTK_IS_STYLE_PROVIDER_PRIVATE (provider), 1);
+
+  iface = GTK_STYLE_PROVIDER_PRIVATE_GET_INTERFACE (provider);
+
+  if (!iface->get_scale)
+    return 1;
+
+  return iface->get_scale (provider);
+}
index a66e1860882985e329f90110cd599f8da5dd95f0..ff58b9e869a5b8f0672c01765be1258140d8ec08 100644 (file)
@@ -44,6 +44,7 @@ struct _GtkStyleProviderPrivateInterface
   GtkSettings *         (* get_settings)        (GtkStyleProviderPrivate *provider);
   GtkCssKeyframes *     (* get_keyframes)       (GtkStyleProviderPrivate *provider,
                                                  const char              *name);
+  int                   (* get_scale)           (GtkStyleProviderPrivate *provider);
   void                  (* lookup)              (GtkStyleProviderPrivate *provider,
                                                  const GtkCssMatcher     *matcher,
                                                  GtkCssLookup            *lookup,
@@ -60,6 +61,7 @@ GtkCssValue *           _gtk_style_provider_private_get_color    (GtkStyleProvid
                                                                   const char              *name);
 GtkCssKeyframes *       _gtk_style_provider_private_get_keyframes(GtkStyleProviderPrivate *provider,
                                                                   const char              *name);
+int                     _gtk_style_provider_private_get_scale    (GtkStyleProviderPrivate *provider);
 void                    _gtk_style_provider_private_lookup       (GtkStyleProviderPrivate *provider,
                                                                   const GtkCssMatcher     *matcher,
                                                                   GtkCssLookup            *lookup,